package day8;
//通过线程模拟病人看病的功能
//第一类病人: 是普通用户 50人 看病时长:500ms
//优先级低一些
//如果普通用户看完了10人优先看完VIP用户再看普通用户
//第二类病人: 是VIP用户 10人 看病时长:1000ms
//优先级会高一些
public
class Demo {
    public static
    void main(String[] args) {
        Thread vip=new Thread(()->{
            for (int i=0;i<10;i++){
                System.out.println(Thread.currentThread().getName()+(i+1)+" 正在看病");
                try {
                    Thread.sleep(1000);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        },"vip");
        Thread ordinary=new Thread(()->{
            for (int i=0;i<50;i++) {
                try {
                    if (i == 10) vip.join();
                    Thread.sleep(500);
                    System.out.println(Thread.currentThread().getName() + (i + 1) + " 正在看病");
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        },"ordinary");
        vip.setPriority(10);
        ordinary.setPriority(5);
        ordinary.start();
        vip.start();

    }
}
